let app = getApp()
const db = wx.cloud.database({env: app.globalData.CLOUD_ENV})
const util = require('../../utils/util.js')
const _ = db.command
// console.log(_);
// 获取操作面试题数据表的对象（面试题数据集合）
const DBInterview = db.collection('db_topic')
const DBKeywords = db.collection('db_keywords')

Page({
  data: {
    value: '',
    keywords: [],
    historys: [],
    lists: []
  },

  onChange(event) {
    // event.detail 为当前输入的值
    // console.log(event.detail);
    this.setData({
      value: event.detail
    })
  },

  // 清空列表
  clearFn(){
    this.setData({
      lists: [],
      value: ''
    })
  },

  // 获取关键字
  async getKeywordFn(){
    await DBKeywords.get().then(
      content=>{
        // console.log('1.0',content)
        let {errMsg, data} = content;
        if(errMsg == "collection.get:ok") {
          this.setData({
            keywords: data
          })
        }
      }
    )
  },

  // 初始化
  onLoad(){
     let str = wx.getStorageSync('HISTORY')
    //  console.log("str:",str)
     if(str){
       let historys = JSON.parse(str);
       this.setData({historys})
     }
    // 初始化建议关键字
     this.getKeywordFn();
  },
  // 获取数据
  async getDataFn(keyword){
    // console.log({keyword})
    //  条件查询（关键字查询）
    await DBInterview
    .where(_.or([
      {
        q:db.RegExp({
          // regexp: '.*' + keyword + '.*',
          regexp: keyword,
          options: 'i',
        })
      }
    ]))
    .get()
     .then(
       rows=>{
        //  console.log('2.0',rows)
         let arr = rows.data.map(item=>{
            // let dt = new Date(item.create_time)
            // item.create_time = dt.toLocaleDateString();
            item.create_time = util.formatTime(item.create_time);
            return item;
         })
         if(arr.length ==0) {
           wx.showToast({
             title: '没有当前搜索内容~',
             icon: 'none'
           })
         }
         this.setData({
           lists: arr
         })
       }
     )
  },
  // 按回车搜索
  searchFn(){
    // console.log('test')
    let keyword = this.data.value;
    if(keyword == "") {
      wx.showToast({
        title: '输入框不能为空。',
        icon: 'none'
      })
      return;
    }
    // 本地缓存历史搜索
    // console.log(keyword)
    let historys = this.data.historys || [];
    historys.push(keyword)
    let arr = [... new Set(historys)];
    this.setData({historys: arr})
    wx.setStorageSync('HISTORY', JSON.stringify(arr))

    // 执行搜索功能
    this.getDataFn(keyword)

    // 重置输入框
    // this.setData({value: ''})
  },
  // 点击关键字搜索
  addSuggestSearch(e){
    // console.log(e.currentTarget.dataset.kd)
    let keyword = e.currentTarget.dataset.kd;
    if(keyword){
        // 获取搜索列表
        this.getDataFn(keyword)
        this.setData({value: keyword})
    }
  },
  // 删除历史记录
  removeFn(){
      wx.removeStorageSync('HISTORY')
      this.setData({
        historys:[]
      })
  }
});